<?php
/**
 * shipping_agent SOAP classes.
 *
 * @package shipping_agent
 * @copyright Copyright 2009 Structured Solutions
 * @license http://www.codeplex.com/ShippingAgent/license Microsoft Public License (Ms-PL)
 * @version 3.6
 */

/**
 * @package shipping_agent
 * @subpackage SOAP
 */
class Credentials
{
    public $Password = null;
    public $Username = null;
}

/**
 * @package shipping_agent
 * @subpackage SOAP
 */
class Address
{
	/**
	 * Identifies the address.
	 *
	 * AddressId must not be null or empty. Shipper will consolidate all
	 * addresses of the same type with the same AddressId. For example, if two
	 * Destination addresses have the same AddressId, then only one copy will
	 * be stored in Shipper. If the user edits the Destination address, the
	 * changes will take affect for every Package that shares the same Destination
	 * address. If you do not want this behavior, then generate a unique AddressId
	 * for each address.
	 *
	 * Shipping Agent can use the AddressId in the Update::Destination value
	 * to locate and update the address in the order and customer's address
	 * book.
	 * @see ShippingAddress
	 * @see Update::$Destination
	 * @var string
	 */
	public $AddressId = null;
	/**
	 * @var string
	 */
	public $City = null;
	/**
	 * @var string
	 */
	public $Company = null;
	/**
	 * The 2 character ISO code for the country. For example, US for United States.
	 * @var string
	 */
	public $Country = null;
	/**
	 * @var string
	 */
	public $Email = null;
	/**
	 * @var string
	 */
	public $Fax = null;
	/**
	 * @var string
	 */
	public $FirstName = null;
	/**
	 * @var string
	 */
	public $LastName = null;
	/**
	 * @var string
	 */
	public $Line1 = null;
	/**
	 * @var string
	 */
	public $Line2 = null;
	/**
	 * @var string
	 */
	public $Phone = null;
	/**
	 * @var string
	 */
	public $PostalCode = null;
	/**
	 * The 2 character state or province code. For example, OR for Oregon.
	 * @var string
	 */
	public $Region = null;
}

/**
 * @package shipping_agent
 * @subpackage SOAP
 */
class Customer
{
	public $CustomerId = null;
	public $CustomerUrl = null;
	public $Email = null;
	public $FirstName = null;
	public $LastName = null;
	public $MerchantUrl = null;
	public $UserName = null;
}

/**
 * @package shipping_agent
 * @subpackage SOAP
 */
class Features
{
    public $SupportsNewAndUpdatedOrders = false;
}

/**
 * Named ShippingAgentItem to avoid name collision with
 * include\modules\shipping.php\item
 * @package shipping_agent
 * @subpackage SOAP
 */
class ShippingAgentItem
{
	public $Code = null;
	public $Inventory = 0;
	public $ItemId = null;
	public $LineTotal = 0;
	public $Manufacturer = null;
	public $Name = null;
	public $Price = 0;
	public $Properties = null;
	public $Quantity = 0;
	public $Shippable = false;
	public $Vendor = null;
	public $Weight = 0;
}

class ItemResult
{
    public $Message = null;
    public $Item = null;
    public $Success = false;
}

/**
 * @package shipping_agent
 * @subpackage SOAP
 */
class NamedAmount
{
	public $Amount = 0;
	public $Description = null;
	public $Name = null;
}

/**
 * ShippingAgentOrder corresponds to the Order type in the WSDL. It
 * is called ShippingAgentOrder to avoid a naming collision with the
 * order class in the cart.
 * @package shipping_agent
 * @subpackage SOAP
 */
class ShippingAgentOrder
{
	public $BillingAddress = null;
	public $Charges = null;
	public $Customer = null;
	public $CustomerUrl = null;
	public $Items = null;
    public $LastUpdated = "2000-01-01T00:00:00-07:00";
	public $MerchantUrl = null;
	public $OrderDate = "2000-01-01T00:00:00-07:00";
	public $OrderId = null;
	public $OrderNumber = null;
	public $OrderStatus = null;
	public $OrderTotal = 0;
	public $Packages = null;
	public $Payments = null;
	public $PaymentStatus = null;
	public $Properties = null;
	public $ShippingStatus = null;
}

/**
 * @package shipping_agent
 * @subpackage SOAP
 */
class OrderPage
{
	public $Key = null;
	public $Orders = null;
	public $Remaining = 0;
}

/**
 * @package shipping_agent
 * @subpackage SOAP
 */
class OrderResult
{
	public $Message = null;
	public $Order = null;
	public $Success = false;
}

/**
 * @package shipping_agent
 * @subpackage SOAP
 */
class OrderStatus
{
    public $Name = null;
    public $OrderStatusId = null;
}

/**
 * @package shipping_agent
 * @subpackage SOAP
 */
class Package
{
	public $Charges = null;
	public $CustomerUrl = null;
	public $Destination = null;
	public $Height = 0;
	public $Instructions = null;
	public $InsuranceValue = 0;
	public $Items = null;
	public $Length = 0;
	public $RateOptionName = null;
	public $MerchantUrl = null;
	public $OrderId = null;
	public $PackageId = null;
	public $Properties = null;
	public $RateProviderName = null;
	public $ShipDate = null;
	public $Shipped = false;
	public $TrackingNumber = null;
	public $TrackingProviderId = null;
	public $TrackingProviderName = null;
	public $Warehouse = null;
	public $Weight = 0;
	public $Width = 0;
}

/**
 * @package shipping_agent
 * @subpackage SOAP
 */
class PackagePage
{
	public $Key = null;
	public $Packages = null;
	public $Remaining = 0;
}

/**
 * @package shipping_agent
 * @subpackage SOAP
 */
class PackageRef
{
	public $OrderId = null;
	public $PackageId = null;
}

/**
 * @package shipping_agent
 * @subpackage SOAP
 */
class PackageResult
{
	public $Message = null;
	public $Package = null;
	public $Success = false;
}

/**
 * @package shipping_agent
 * @subpackage SOAP
 */
class PaymentStatus
{
    public $Name = null;
    public $PaymentStatusId = null;
}

/**
 * @package shipping_agent
 * @subpackage SOAP
 */
class Property
{
	public $Name = null;
	public $Value = null;
}

/**
 * @package shipping_agent
 * @subpackage SOAP
 */
class RateProvider
{
	public $Name = null;
	public $RateOptions = null;
}

/**
 * @package shipping_agent
 * @subpackage SOAP
 */
class ShippingAddress extends Address
{
	/**
	 * true if the address is residential.
	 * @var bool
	 */
	public $Residential = false;
}

/**
 * @package shipping_agent
 * @subpackage SOAP
 */
class Supplier
{
	public $Email = null;
	public $Name = null;
	public $SupplierId = null;
}

/**
 * @package shipping_agent
 * @subpackage SOAP
 */
class TrackingProvider
{
	public $Name = null;
	public $TrackingProviderId = null;
}

/**
 * @package shipping_agent
 * @subpackage SOAP
 */
class UpdateResult
{
	public $Message = null;
	public $OrderResult = null;
    public $PackageResult = null;
	public $Success = false;
}

/**
 * @package shipping_agent
 * @subpackage SOAP
 */
class GetFeaturesResponse
{
    /**
     * @var Features
     */
    public $GetFeaturesResult;
}

/**
 * @package shipping_agent
 * @subpackage SOAP
 */
class GetNewAndUpdatedOrdersResponse
{
	/**
	 * @var OrderPage
	 */
	public $GetNewAndUpdatedOrdersResult;
}

/**
 * @package shipping_agent
 * @subpackage SOAP
 */
class GetNewOrdersResponse
{
	/**
	 * @var OrderPage
	 */
	public $GetNewOrdersResult;
}

/**
 * @package shipping_agent
 * @subpackage SOAP
 */
class GetOrderResponse
{
	/**
	 * @var OrderResult
	 */
	public $GetOrderResult;
}

/**
 * @package shipping_agent
 * @subpackage SOAP
 */
class GetOrdersByRangeResponse
{
	/**
	 * @var OrderPage
	 */
	public $GetOrdersByRangeResult;
}

/**
 * @package shipping_agent
 * @subpackage SOAP
 */
class GetOrderStatusesResponse
{
    /**
     * @var OrderStatus[]
     */
    public $GetOrderStatusesResult;
}

/**
 * @package shipping_agent
 * @subpackage SOAP
 */
class GetPackageResponse
{
	/**
	 * @var PackageResult
	 */
	public $GetPackageResult;
}

/**
 * @package shipping_agent
 * @subpackage SOAP
 */
class GetPackageItemResponse
{
	/**
	 * @var PackageItemResult
	 */
	public $GetPackageItemResult;
}

/**
 * @package shipping_agent
 * @subpackage SOAP
 */
class GetPaymentStatusesResponse
{
    /**
     * @var PaymentStatus[]
     */
    public $GetPaymentStatusesResult;
}

/**
 * @package shipping_agent
 * @subpackage SOAP
 */
class GetRateProvidersResponse
{
	/**
	 * @var RateProvider[]
	 */
	public $GetRateProvidersResult;
}
/**
 * @package shipping_agent
 * @subpackage SOAP
 */
class GetTrackingProvidersResponse
{
	/**
	 * @var TrackingProvider[]
	 */
	public $GetTrackingProvidersResult;
}

/**
 * @package shipping_agent
 * @subpackage SOAP
 */
class GetVersionResponse
{
	/**
	 * @var string
	 */
	public $GetVersionResult;
}

/**
 * @package shipping_agent
 * @subpackage SOAP
 */
class UpdatePackageResponse
{
	/**
	 * @var UpdateResult
	 */
	public $UpdatePackageResult;
}
?>